1. Field of the Invention
The present invention relates to a hardware acceleration apparatus for a storage system connected to a network and a method for handling data using the apparatus, and more particularly, to a hardware acceleration apparatus for an iSCSI target system using a TOE (TCP/IP offload engine) and a method for performing read/write command using the apparatus.
2. Description of the Related Art
With the rapid development of computer systems, the amount of data stored on servers has increased exponentially. Accordingly, demand for improvements in performance of a data storage device has continuously grown. Thus, since there is a limit in storing data only in a storage device that is directly connected to a server, a variety of storage device connection methods through a network have been devised.
The connection method between a storage device and a server using a network that is currently widely used includes an NFS (network file system), an NAS (network attached storage), and an SAN (storage area network).
The NFS is a method for connecting a storage device to a network that has been previously used in which data is stored in unit of files through a TCP (transmission control protocol) connection between general servers. However, according to this method, the performance of transmission is deteriorated because a load increases in a file system.
The NAS is a method for storing data in units of files through the TCP connection like the NFS. However, the NAS uses dedicated hardware to decrease a load on the server. In this method, nevertheless, the improvement of the storage performance for a target system is restricted by a load on the file system due to the limit of the file unit storage method.
Unlike the NAS or NFS, the SAN is a method which improves the I/O performance by reducing a load on a storage device as the storage device and the server are connected through a dedicated network and the load on a file system is handled at the side of the server through the storage of data in unit of blocks, not files. However, this method has drawbacks in that the construction of a dedicated network incurs high costs and the establishment of a connection network throughout a wide range is difficult.
Another approach is a network protocol. In particular, there have been various attempts to use an IP network which is simple and relatively inexpensive, is capable of routing, and has no limit in distance. An example is an iSCSI (internet small computer system interface) protocol that is a method for transceiving data using an iSCSI protocol arranged on a TCP/IP protocol over the Internet.
However, since the iSCSI protocol is connected through an IP network, it causes a great amount of load during the processing of the TCP/IP protocol. If the load is appropriately controlled, the iSCSI protocol may be useful, which will be discussed below over relevant prior arts.
First, U.S. Patent Publication No. 2004-0174893 filed on Feb. 23, 2004, published on Sep. 9, 2004, invented by Yoshohiro Saito and assigned to NEC Corporation, discloses an iSCSI device and a communication control method thereof. According to this invention, incoming packets are classified using a discriminating network controller for an iSCSI target system and two operation processors perform distributed processes for cases of an iSCSI packet and a non-iSCSI packet so that, when a large amount of general packets are incoming, the iSCSI I/O performance is not degraded and thus performance is improved.
In the published invention, since the two operation processors for processing network protocols are provided, even when the amount of IP traffic increases, the iSCSI I/O processing performance is not degraded. However, the invention does not teach any method concerning additional TCP/IP protocol processing to reduce the load on a CPU that is another important part of the system.
Next, U.S. Patent Publication No. 2004-0062267 filed on Jun. 5, 2003, published on Apr. 1, 2004, and invented by John Shigeto Minami et al., discloses a gigabit Ethernet adaptor supporting iSCSI and IPSec protocol. In this published invention, a gigabit Ethernet controller includes a method for processing TCP/IP protocols with an operation processor, a memory, and a program added. In particular, a protocol such as iSCSI or IPSec is processed by a built-in operation processor and a built-in memory so that performance is improved.
The published invention is related to an intelligent network adaptor and a processing structure thereof which improves performance by executing a protocol processing step using a general processor included in a network controller to improve performance. However, when the TCP/IP protocol is processed using a general operation processor and program, performance is degraded compared to the case when an dedicated TOE controller is used. If programs for processing all protocols suggested in the above invention are included in an Ethernet controller, the performance may be further degraded.
Also, for use in an iSCSI target system, the optimization of a data transfer path is no less important than the protocol processing step. The use of a general operation processor as in the published invention is ineffective compared to the optimization of a path using the dedicated TOE controller, the network controller, a disk controller, and an I/O operation processor.